summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorliamwhite <liamwhite@users.noreply.github.com>2024-01-23 19:31:41 +0100
committerGitHub <noreply@github.com>2024-01-23 19:31:41 +0100
commita76f6a2775ac5a716aed38b9e6c963b739f39060 (patch)
tree4349f17bb7dadedd8937070a4ddba9342359f688
parentMerge pull request #12768 from german77/wrong_conversion (diff)
parentloader: also register fs process for raw exefs partition (diff)
downloadyuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.tar
yuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.tar.gz
yuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.tar.bz2
yuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.tar.lz
yuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.tar.xz
yuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.tar.zst
yuzu-a76f6a2775ac5a716aed38b9e6c963b739f39060.zip
-rw-r--r--src/core/loader/nsp.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/core/loader/nsp.cpp b/src/core/loader/nsp.cpp
index 28116ff3a..3016d5f25 100644
--- a/src/core/loader/nsp.cpp
+++ b/src/core/loader/nsp.cpp
@@ -10,6 +10,7 @@
#include "core/file_sys/nca_metadata.h"
#include "core/file_sys/patch_manager.h"
#include "core/file_sys/registered_cache.h"
+#include "core/file_sys/romfs_factory.h"
#include "core/file_sys/submission_package.h"
#include "core/hle/kernel/k_process.h"
#include "core/hle/service/filesystem/filesystem.h"
@@ -109,6 +110,13 @@ AppLoader_NSP::LoadResult AppLoader_NSP::Load(Kernel::KProcess& process, Core::S
return result;
}
+ if (nsp->IsExtractedType()) {
+ system.GetFileSystemController().RegisterProcess(
+ process.GetProcessId(), {},
+ std::make_shared<FileSys::RomFSFactory>(*this, system.GetContentProvider(),
+ system.GetFileSystemController()));
+ }
+
FileSys::VirtualFile update_raw;
if (ReadUpdateRaw(update_raw) == ResultStatus::Success && update_raw != nullptr) {
system.GetFileSystemController().SetPackedUpdate(process.GetProcessId(),